#ifndef PREPROCESS_H
#define	PREPROCESS_H

#include <iostream>
#include <string>
#include <ros/ros.h>
#include <sensor_msgs/LaserScan.h>
#include <vector>
#include <random>
#include <time.h>


class PreProcess {
public:
  PreProcess();
  PreProcess(const PreProcess& orig);
  virtual ~PreProcess();
private:
  void newLaserScan(const sensor_msgs::LaserScan& scan_msg);
  bool check(float r1, float r2, float th);
  
  ros::NodeHandle nh_;
  ros::Subscriber scan_sub_;
  sensor_msgs::LaserScan scan_;
  ros::Publisher processed_pub;
  double cleanTh,noiseTh;
  
  std::default_random_engine generator;
  std::normal_distribution<double> distribution;
  
};

#endif	/* PREPROCESS_H */
